home *** CD-ROM | disk | FTP | other *** search
Makefile | 1995-06-20 | 4.8 KB | 213 lines |
- # makefile for whatis,whatisin,apropos
- #
- # version:
- #
- # $Id$
- #
- # $Log$
- #
- # compiler (use second set for MiNT):
- #SYSINC = c:/u/gcc/include
- #SYSLIB = c:/u/gcc/lib
- #SPECL = -nostdlib $(SYSLIB)/crt0.o
- SYSINC =
- SYSLIB =
- SPECL =
- #CC = gcc -z -Wall -v -I$(SYSINC)
- #LD = gcc -z -Wall -v -L$(SYSLIB) $(SPECL)
- CC = cc -Aa
- LD = cc -Aa
- #LIBS32 = -liio -lgnu
- #LIBS16 = -liio16 -lgnu16
- LIBS32 =
- LIBS16 =
- USRLIBS =
- # if -mshort, use LIBS16...
- LIBS = $(USRLIBS) $(LIBS32)
-
- # compile/link options:
- DEFS = #-DCHECK_MAGIC
- OPT = #-O -fomit-frame-pointer
- DEBUG = #-DDEBUG
- PROF =
- # use -mshort for 16-bit version (make sure to change libs)
- ARCH =
- MISC =
- CFLAGS = $(DEBUG) $(PROF) $(ARCH) $(MISC) $(OPT) $(DEFS)
- LDFLAGS = $(DEBUG) $(PROF) $(ARCH) $(MISC)
-
- # targets, etc:
- EXE =#.exe
- SECT = 1
- SUBSECT =
- TARG1 = whatis$(EXE)
- TARG2 = whatisin$(EXE)
- TARG3 = apropos$(EXE)
- TARGETS = $(TARG1) $(TARG2) $(TARG3)
- MANPAG1 = whatis.$(SECT)
- MANSRC1 = whatis.man
- MANPAG2 = whatisin.$(SECT)
- MANSRC2 = whatisin.man
- MANPAG3 = apropos.$(SECT)
- MANSRC3 = apropos.man
- MANPAG4 = whatis.5
- MANSRC4 = whatis.ma5
- MANPAGES = $(MANPAG1) $(MANPAG2) $(MANPAG3) $(MANPAG4)
-
- # commands used here:
- ECHO = echo
- CP = cp -p
- COMPRESS = compress
- RM = rm -f
-
- # headers, sources, and objects:
- HEADERS = whatis.h
- SRCS1 = whatis.c
- SRCS2 = whatisin.c
- SRCS3 = apropos.c
- COMSRC = common.c
- SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(COMSRC)
- OBJS1 = whatis.o
- OBJS2 = whatisin.o
- OBJS3 = apropos.o
- COMOBJ = common.o
- OBJS = $(OBJS1) $(OBJS2) $(OBJS3) $(COMOBJ)
- DATABASES = whatisin.___ whatis._1_ whatis._2_ whatis._4_ \
- whatis._5_ whatis._7_ whatis._8_
- #whatis._6_ whatis._3_
-
- # distribution files (add others as needed):
- OTHERS = readme makefile $(MANSRC) todo
- DISTFILES = $(OTHERS) $(SRCS) $(HEADERS)
- LOG = compile.err
-
- # install directories, etc:
- #SLASH =\\
- #BINDIR = c:\usr\bin
- #MANTOP = c:\usr\man
- #MANDIR = $(MANDIR)$(SLASH)man$(SECT)
- #MANDI5 = $(MANDIR)$(SLASH)man5
- #CATDIR = $(MANTOP)$(SLASH)cat$(SECT)
- #CATDI5 = $(MANTOP)$(SLASH)cat5
- SLASH =/
- BINDIR = /mnt/rosenkra/test/bin
- MANTOP = /mnt/rosenkra/test/man
- MANDIR = $(MANTOP)$(SLASH)man$(SECT)
- MANDI5 = $(MANTOP)$(SLASH)man5
- CATDIR = $(MANTOP)$(SLASH)cat$(SECT)
- CATDI5 = $(MANTOP)$(SLASH)cat5
-
-
- # install commands
- #
- INST_BIN = cp -p
- INST_MAN = cp -p
-
-
-
-
-
- # directions...
- #
- directions:
- @$(ECHO) type make all to built $(TARGETS)
- @$(ECHO) type make install to build/install $(TARGET)
- @$(ECHO) type make clean to remove objects
- @$(ECHO) type make clobber to remove objects and $(TARGETS)
- @$(ECHO) these should be done in this order
-
-
- # main target (make all)...
- #
- all: $(TARGETS) mkwhatis$(EXE)
-
-
- $(TARG1): $(COMOBJ) $(OBJS1)
- $(LD) $(LDFLAGS) -o $(TARG1) $(OBJS1) $(COMOBJ) $(LIBS)
- @$(ECHO) done making $(TARG1)
-
- $(TARG2): $(COMOBJ) $(OBJS2)
- $(LD) $(LDFLAGS) -o $(TARG2) $(OBJS2) $(COMOBJ) $(LIBS)
- @$(ECHO) done making $(TARG2)
-
- $(TARG3): $(COMOBJ) $(OBJS3)
- $(LD) $(LDFLAGS) -o $(TARG3) $(OBJS3) $(COMOBJ) $(LIBS)
- @$(ECHO) done making $(TARG3)
-
-
-
- mkwhatis$(EXE): mkwhatis.o
- $(LD) $(LDFLAGS) -o mkwhatis$(EXE) mkwhatis.o $(LIBS)
-
-
-
-
- # manpage (use built-in .man.cat rule)...
- #
- manpage: $(MANPAGES)
-
- $(MANPAG1): $(MANSRC1)
- nroff -man $(MANSRC1)|ul -t dumb|cat -s >$(MANPAG1)
-
- $(MANPAG2): $(MANSRC2)
- nroff -man $(MANSRC2)|ul -t dumb|cat -s >$(MANPAG2)
-
- $(MANPAG3): $(MANSRC3)
- nroff -man $(MANSRC3)|ul -t dumb|cat -s >$(MANPAG3)
-
- $(MANPAG4): $(MANSRC4)
- nroff -man $(MANSRC4)|ul -t dumb|cat -s >$(MANPAG4)
-
-
-
-
- install: install_bin install_man install_mkwhatis install_databases
-
- install_mkwhatis: mkwhatis$(EXE)
- $(INST_BIN) mkwhatis$(EXE) $(BINDIR)$(SLASH)mkwhatis$(EXE)
- nroff -man mkwhatis.ma8|ul -t dumb|cat -s >mkwhatis.8
- $(INST_MAN) mkwhatis.ma8 $(MANDIR)$(SLASH)mkwhatis.8
- $(INST_MAN) mkwhatis.8 $(CATDIR)$(SLASH)mkwhatis.8
- touch install_mkwhatis
-
- install_bin: $(TARGETS)
- $(INST_BIN) $(TARG1) $(BINDIR)$(SLASH)$(TARG1)
- $(INST_BIN) $(TARG2) $(BINDIR)$(SLASH)$(TARG2)
- $(INST_BIN) $(TARG3) $(BINDIR)$(SLASH)$(TARG3)
- touch install_bin
-
- install_man: $(MANPAGES)
- $(INST_MAN) $(MANSRC1) $(MANDIR)$(SLASH)$(MANPAG1)
- $(INST_MAN) $(MANSRC2) $(MANDIR)$(SLASH)$(MANPAG2)
- $(INST_MAN) $(MANSRC3) $(MANDIR)$(SLASH)$(MANPAG3)
- $(INST_MAN) $(MANSRC4) $(MANDI5)$(SLASH)$(MANPAG4)
- $(INST_MAN) $(MANPAG1) $(CATDIR)$(SLASH)$(MANPAG1)
- $(INST_MAN) $(MANPAG2) $(CATDIR)$(SLASH)$(MANPAG2)
- $(INST_MAN) $(MANPAG3) $(CATDIR)$(SLASH)$(MANPAG3)
- $(INST_MAN) $(MANPAG4) $(CATDI5)$(SLASH)$(MANPAG4)
- touch install_man
-
- install_databases:
- $(INST_MAN) $(DATABASES) $(MANTOP)
- touch install_databases
-
-
- # others...
- #
- clean:
- $(RM) $(OBJS) $(LOG) core mkwhatis.o
-
- clobber: clean
- $(RM) $(TARGETS) mkwhatis
- $(RM) install_bin install_man
- $(RM) install_mkwhatis install_databases
-
-
- # dependencies...
- #
- $(COMOBJ): $(HEADERS)
- $(OBJS1): $(HEADERS)
- $(OBJS2): $(HEADERS)
- $(OBJS3): $(HEADERS)
-
-